using System;
using System.Data;
using System.Collections.Generic;
using System.Collections;
using Guestbook.domain;
using System.Text;
using Guestbook.business;
using System.Configuration.Provider;

namespace Guestbook.dao
{
    public abstract partial class GuestBookProvider : ProviderBase
    {
        #region - GuestBook -

        public abstract GuestBook GetGuestBook(int id, int pageSize, int currentPage);

        public abstract GuestBook SelectSelfGuestBookByEmail(string email);

        public abstract GuestBook SelectSelfGuestBookById(int guestBookId);

        public abstract GuestBook SelectGuestBookById(int id);

        public abstract void UpdateGuestBook(GuestBook obj);

        public abstract int InsertGuestBook(GuestBook obj);

        protected abstract GuestBook GetGuestBookFromReader(SafeDataReader dr);

        public abstract void DeleteGuestBook(int id);

        public abstract bool IsExist(int id);

        public abstract void changeGuestBookActiveStatus(int guestBookId, bool status);

        #endregion

        #region - Message -

        protected abstract Message GetMessageFromReader(SafeDataReader dr);

        public abstract Message SelectMessagesById(int id);

        public abstract void UpdateMessage(Message message);

        public abstract int InsertMessage(Message message);

        public abstract void DeleteMessagesById(int id);

        #endregion
    }
}
